home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-10-17 | 60.9 KB | 1,502 lines |
-
- #### #### ### ###### #### #### #### ####
- ##### #### ### ########## ##### #### #### ####
- ###### #### #### #### #### ###### #### #### ####
- ####### #### ###### ######### #### ####### #### #### ####
- ############ ########## ######### #### ####### ############ #### ####
- ############ ### ### #### #### ####### ############ #### ####
- #### ####### ### ### #### #### #### #### ####### #### ####
- #### ###### ### ### #### #### #### #### ###### #### ####
- #### ##### ########## ######### ########## #### ##### ##########
- #### #### ###### ###### ###### #### #### ######
-
-
- Version 1.4
- October 16, 1993
-
- D O C U M E N T A T I O N
-
-
- %%%%%%%%%%%%
- %%%%############%%%%
- %%%%%% %%#### ######## ####%% %%%%%%
- %%##%%%% %%#### ############ ####%% %%%%##%%
- %%%%%% %%#### ### #### ## ####%% %%%%%%
- %%##%% %%########## OO ## OO ########%% %%##%%
- %%####%%############ ## ##########%%####%%
- %%%%%%##### ##### #### ### ###%%%%%%
- %%###### ## ################## ## ####%%
- %%########### ########%%
- %%############## XXXXXX ##########%%
- %%################## ############%%
- %%########################################%%
- %%########################################%%
- %%########################################%%
- %%########################################%%
- %%######################################%%
- %%####################################%%
- %%##################################%%
- %%################################%%
- %%############################%%
- %%########################%%
- %%%%%%############%%%%%%
- %%####%%%%%%%%%%%%####%%
- %%####%% %%####%%
- %%%%%%%%%% %%%%%%%%%%
- %%########%% %%########%%
- %%%%%%%%%%%% %%%%%%%%%%%%
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 1: Table of contents Page 2
- ------------------------------------------------------------------------
-
- 2. Introduction ................................................ 3
-
- 3. Upgrades since last release ................................. 4
- a) New functions ......................................... 4
- b) Changes, Bug fixes .................................... 4
- c) NotGNU services ....................................... 4
-
- 4. Configuring NotGNU .......................................... 5
- a) Window settings: Size, Font, Colors, MenuBar .......... 5
- b) Environment variables ................................. 5
- c) Command Line Switches ................................. 6
- d) Startup file: NOTGNU.ST ............................... 7
- e) MESHELL.PIF, COMMAND.PIF .............................. 9
- f) Using an alternative command interpreter .............. 9
-
- 5. Extra features .............................................. 10
- a) NotAlarm .............................................. 10
- b) NotBoot ............................................... 10
-
- 6. NotGNU Operations ........................................... 11
- a) Mouse operations ...................................... 11
- b) Killing, Yanking, Cutting, Pasting .................... 12
- c) Rectangle operations .................................. 12
- d) Autocompletion ........................................ 13
- e) Minibuffer ............................................ 13
- f) Buffer List ........................................... 13
- g) dired ................................................. 13
- h) query-replace, replace-string, set-case ............... 14
- i) undo .................................................. 14
-
- 7. Command reference ........................................... 15
- a) Some basic Emacs commands ............................ 15
- b) Specific NotGNU keys .................................. 19
- c) Specific NotGNU functions ............................. 20
-
- 8. Limitations and bugs (yuk!) ................................. 25
-
- 9. Frequently Asked Questions .................................. 27
-
- 10. Services, updates, mailing lists ............................ 29
- a) FTP access ............................................ 29
- b) NotGNU-request ........................................ 29
- c) NotGNU-list ........................................... 30
- d) Other lists ........................................... 30
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 2: Introduction Page 3
- ------------------------------------------------------------------------
-
- NotGNU - This is not the GNU Emacs Editor. A text editor similar to
- GNU emacs but much smaller and lighter. Compare a (quick) economy car
- to a mobile home and that's notgnu vs GNU emacs. They'll both get you
- where you want to be, with more or less gadgets along the way.
-
- The editor was based on MG2a, which was based on the original Conroy
- emacs. Some of the basics remain the same, but I have heavily modified
- the code to support the windowing environments, support large files
- and Windows/Un*x virtual memory, and to make it's basic editing look
- more like GNU, or to add whatever I needed. Your mileage may vary.
-
- I have built it on various Window's (Intel) machines, an Intel NT box,
- a DEC RISC (MIPS) Ultrix workstation, a DEC Alpha OSF box, a DEC Alpha
- NT box, an INTERACTIVE Unix 486, a SparcStation 10 running Solaris
- 2.1, and HP-UX 300 and 700 series workstations; It also appears to run
- well on LINUX and a few other UN*X machines, but not built by me. If
- you want sources to build it for your system, send me mail.
-
- This program is free in binary form; you can redistribute it as long
- as you don't charge for it, or include it in a product which is
- distributed for profit. I reserve all rights to this software in
- source and binary form, and you should not redistribute the source
- or otherwise make a profit on this software in any form.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
- If you make modifications and/or bugfixes to the source, or just
- discover repeatable bugs/problems, please feel obliged to send them
- to me. I will maintain and support versions I distribute as time and
- money allows.
-
- Please send me mail if you try this editor. I would appreciate any/all
- comments.
-
- Please enjoy and find it useful; that's the overall goal. Donations
- graciously accepted.
-
- Julie Melbin email: julie@world.std.com
- P.O Box 1007
- Groton Ma 01450
- USA
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 3: Upgrades since last release Page 4
- ------------------------------------------------------------------------
-
- The following is a description of the more important changes since
- last release, version 1.3~ of September 8, 1993:
-
- 3.a) New functions
- -------------------
- For a more complete description of these functions, refer to
- section 7.c.
-
- 1) buffer-flush-undo = Clear the undo stack
- 2) copy-region-to-buffer = Copy region to specified buffer
- 3) display-filename = Toggle filename display in modeline
- 4) display-time = Toggle time display in modeline
- 5) print-file = Guess..
- 6) print-file-exit = Same as above, then exit
- 7) set-directory-cols = Single or multiple columns
- 8) set-select-highlight = Text or background highlight (w/mouse)
- 9) undo-high-threshold = Same as set-undo-stack-depth
-
-
- 3.b) Changes, bug fixes
- ------------------------
- 1) Some 'undo' problems, e.g. after the TAB key, were fixed.
- 2) DOS version (dnot.exe) now detects screen sizes other than
- 80x25 on startup. Use set-window-size to change.
- 3) DOS version (dnot.exe) now has coloring of touched text.
- 4) DOS version (dnot.exe) now has 'compile' and 'next-error'
- 5) Windows version (wnot.exe) now uses its own colormap,
- rather than the Windows default; change via the application
- control menu in the upper left corner.
- 6) Windows version now uses background highlight by default.
- Change with set-select-highlight.
-
-
- 3.c) NotGNU services
- ---------------------
- With this release of NotGNU, a couple of new services are
- being made available:
- 1) NotGNU-list; a mailing list for NotGNU related discussions.
- 2) NotGNU-request; an automatic service for list maintenance,
- program mailing, information, etc.
-
- You are strongly encouraged to check these out; please refer
- to section 10 for details.
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 4: Configuring NotGNU Page 5
- ------------------------------------------------------------------------
-
- Strictly speaking, it is not necessary to perform any configuration
- before running NotGNU. It will operate fairly well with its default
- settings, and a sample startup file (NOTGNU.ST) is also included.
- Nevertheless, you will probably want to adjust certain things to your
- liking as you go along; the following is a description of how to go
- about it.
-
-
- 4.a) Window settings: Size, Fonts, Colors, MenuBar
- ---------------------------------------------------
- If you click once on the 'application control menu' item in the
- upper left corner after starting NotGNU, you will see that there
- are some NotGNU specific items in addition to the standard Windows
- ones. Use these to toggle NotGNU's menu bar on and off, select
- its font and colors, and to save current settings. If you choose
- this last item, the current position and size of the NotGNU window
- will also be saved.
-
- NOTE: You should "Save Settings" at an early convenience, to
- disable the "Welcome to NotGNU!" message box from appearing every
- time you start NotGNU. Also, if you upgrade from an earlier
- version, you should specify a color for the new item "Echo Text
- Color", and save.
-
- The settings will be saved to the file NOTGNU.INI in your Windows
- directory.
-
-
- 4.b) Environment variables
- ---------------------------
- Two environment variables will be interpreted by NotGNU if
- present: HOME and MESHELL. HOME should point to a directory where
- you have your NOTGNU.ST (and NOTGNU.ALR) file, if different from
- the directory of your executable. MESHELL is the shell to invoke
- for shell-command and shell-window. For Windows 3/NT, you can
- insert the following line in your autoexec.bat:
- set MESHELL=%COMSPEC%
- If you specify %MESHELL%, also be sure to edit the PIF file
- associated with the new shell; see section 4.e) for details.
-
- DOS version uses COMSPEC rather than MESHELL out of historical
- reasons. Sorry for inconsistency.
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 4: Configuring NotGNU (cont.) Page 6
- ------------------------------------------------------------------------
-
- 4.c) Command Line Switches
- ---------------------------
-
- -x function
- Executes "function" on startup. Equivalent to -f under
- GNU emacs. Say you want to use dnot as a text editor;
- start it up using the following command:
-
- dnot.exe -x auto-fill-mode filename
-
- This mode will be toggled for the first file only.
- Or if want to have certain file types always opened as
- read-only under Winodws 3.x, associate the appropriate
- file extensions with the command:
-
- wnot.exe -x toggle-read-only
-
-
- -p filename
- (Windows 3.x only) Prints file, then exits. Used for
- Notepad compability. This switch will also work with
- NotBoot.
-
-
- Note that the DOS and Windows versions also accept '/' as
- switch character, so /x and -x (and /p and -p for the Windows
- version) are equivalent.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 4: Configuring NotGNU (cont.) Page 7
- ------------------------------------------------------------------------
-
- 4.d) Startup file: NOTGNU.ST
- -----------------------------
- NOTGNU.ST will basically contain commands that you want to be
- executed at startup. Most commands that you can execute at
- run-time, you can also put into this file.
-
- NOTE this code is not bullet proof, and broken syntax in the file
- may still crash the editor.
-
-
- 1) Basic syntax
- ----------------
- The syntax is similar to GNU Emacs. The commands are enclosed
- in a pair of parentheses, '(' and ')':
- (toggle-just-write-newline)
-
-
- 2) Arguments
- -------------
- Any arguments should be preceded by the ' character:
- (set-window-size '43,80)
-
-
- 3) OS Dependent configuration
- ------------------------------
- A special 'if' statement is available for OS-dependent
- configuration:
- if OS (command) ; execute command if running under OS
- if !OS (command) ; execute command if not running under OS
- where OS is one of: DOS, Win3, WinNT, X11 (case sensitive)
- One example: if !DOS (global-set-key "\^x`" 'next-error)
-
-
- 4) Comments
- -----------
- Comments in NOTGNU.ST should be prefixed by a ; (semi-colon).
-
-
-
-
-
-
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 4: Configuring NotGNU (cont.) Page 8
- ------------------------------------------------------------------------
-
- 5) global-set-key
- -----------------
- It is also very common to specify keyboard commands in
- NOTGNU.ST. Use the following syntax:
- (global-set-key "\^x!" 'shell-command) ; C-x !
- (global-set-key "\e\^h" 'backward-kill-word) ; M-Backspace.
- (global-set-key "\Insert" 'set-mark-command) ; Insert key
-
-
- The following are legal key names on a PC:
- ----------------------------------------------------------------
- Gray keypad | \Insert, \Delete,
- | \Home, \End, \Page-Up, \Page-Down,
- | \Up-Arrow, \Down-Arrow,
- | \Left-Arrow, \Right-Arrow
- |
- Ctrl + Gray | \Control-Home, \Control-End,
- | \Control-PgUp, \Control-PgDn,
- | \Control-Up, \Control-Down,
- | \Control-Left, \Control-Right,
- | \CBackspace, \CDelete
- |
- Shift + Gray | \SBackspace, \SDelete
- |
- Function keys | \F<n>
- Shift + F-keys | \FS<n>
- Ctrl + F-keys | \FC<n>
- Shift + Ctrl + F-keys | \FCS<n>
- Alt + F-keys | \FM<n>
- |
- Keypad characters | \Kp-+, \Kp--, \Kp-*, \Kp-/, \Kp-.,
- | \Kp-0 .. \Kp-9
- |
- Characters | <c>
- Ctrl + Character | \^<c>
- Alt + Character | \e<c>
- |
- Esc | \e
- Tab | \^i
- ----------------------------------------------------------------
- <n> is 1..10 for the DOS version, and 1..12 for Windows 3 and NT.
- <c> is a character
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 4: Configuring NotGNU (cont.) Page 9
- ------------------------------------------------------------------------
-
- 4.d) MESHELL.PIF, COMMAND.PIF
- ------------------------------
- [Windows 3.x and NT only]
-
- MESHELL.PIF and COMMAND.PIF are sample Windows Program Information
- Files (PIF) that NotGNU uses to execute shell-window and
- shell-command, respectively. They are similar to _default.pif, but
- with increased background priority, execution in background enabled,
- exclusive execution enabled, and close window on exit.
-
- It is important that you copy COMMAND.PIF to your Windows
- directory if you want background tasks like 'compile' to actually
- RUN in the background under Windows 3.x. Failure to do so means
- that background jobs will run VERY VERY SLOWLY.
-
- Also note that if your pif file does not define CloseWindow on
- EXIT, then NotGNU can not tell when the spawned task is complete!
- (This code is under repair so apps that don't even start a window
- can be monitored; stay tuned..)
-
-
- 4.e) Using an alternative command interpreter
- ----------------------------------------------
- If you have specified the %MESHELL% environment variable,
- MESHELL.PIF and COMMAND.PIF will not be used. Instead, execution
- parameters for BOTH shell-command and shell-window will be read
- from the PIF file that corresponds to the specification in this
- variable. Suppose, for instance, that %MESHELL% points to
- c:\dos\4dos\4dos.com. You would then have to edit the file
- c:\dos\4dos\4dos.pif, so that the following are specified
- (Use the Windows PIF editor):
-
- Advanced->Background priority: 90 or more
- Execution in background : Yes
- Execution exclusive : Yes
- Close window on exit : Yes
-
- Also, make sure that NO working directory is specified; otherwise
- make/compile will not work properly.
-
- (These are things you should do anyway, even w/o NotGNU).
-
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 5: Extra features Page 10
- ------------------------------------------------------------------------
-
- 5.a) NotAlarm
- --------------
- NotAlarm is a simple reminder function that can be set via the
- 'alarm' command in NotGNU. Or, if you prefer, you can edit the
- alarm file directly: NOTGNU.ALR. Make sure you put notalarm.exe
- where you put the editor exe file. The NOTGNU.ALR file is loaded
- from HOME on startup.
-
- When setting an alarm, 5 parameters are expected. They are, in
- order: Day (1-31), Month (1-12), Hour (0-23), Minute (0-59),
- Message (string). '99' can be used as a substitute for 'every'
- (every day, every month, every hour..).
-
- This code has minimal error checking.
-
-
- 5.b) NotBoot
- -------------
- NotBoot is a boot manager for the Windows 3.x and NT versions of
- NotGNU. Only one instance of NotGNU can run at once on Windows 3.1,
- but starting up 'notboot.exe' with an argument will import the
- filename given in the argument into the existing NotGNU window; or
- if none exists, NotBoot will start a new NotGNU.
-
- By associating the appropriate file extensions in the File Manager
- (or Norton Desktop etc.) with 'notboot.exe', you will be able to
- edit the corresponding files by double-click on the file icons,
- even if another NotGNU is running. Also, if you are using Norton
- Desktop for Windows, you should make 'notboot.exe' your default
- Windows editor rather than 'wnot.exe'.
-
- Note that at this time you can't associate a file with notboot
- and have the editor print the file by dragging the file to the
- print manager. In other words, use notboot if you like to use
- file manager to open many files into the editor, and use wnot
- if you want to drag and drop for printing. This will be changed
- in the future.
-
-
-
-
-
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 6: NotGNU Operations Page 11
- ------------------------------------------------------------------------
-
- 6.a) Mouse operations
- ----------------------
- [These will not work in DOS, sorry!]
-
- Set cursor position:
- Left button down-up at desired position.
-
- Resize buffer window (when multiple buffers are displayed):
- Left button down-drag on modeline that separates the buffers
-
- Copy region to clipboard:
- Left button down-drag over text to be copied. Mark will be set
- where dragging started, cursor where it stops.
-
- Cut region to clipboard:
- Shift + Left button down-drag over text to be cut. Mark will
- be set where dragging started, cursor where it stops.
-
- Paste/Yank:
- Right button down-up at desired position. (Note that a new can
- be set by down-click ie GNU emacs, or paste occurs at current
- dot ie xterms, etc. See toggle-mouse-paste-where).
-
- Insert file from drag & drop client (e.g. File Manager):
- Drag file icon from external application, release button at
- desired position in NotGNU. (Windows 3 and NT)
-
- Open new buffer w/file from drag & drop client:
- Drag file icon from external application, release button on
- the modeline. (Windows 3 and NT).
-
- Retrieve file from DIRED buffer:
- Left button double-click on filename.
-
- Use buffer from Buffer List:
- Left button double-click on buffer name.
-
- Scrolling:
- Ctrl-left button will scroll the window; shift-control-left
- button reverse the scroll direction. On X11, the editor won't
- see the keystate change w/o a mouse motion event. Text
- selection highlight (ie dot) will Not update during a scroll
- until you move the mouse.)
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 6: NotGNU Operations (cont.) Page 12
- ------------------------------------------------------------------------
-
- 6.b) Killing, Yanking, Cutting, Pasting
- ----------------------------------------
- The windowed versions of NotGNU operate on three different
- kill-buffers/clipboards for cutting & pasting purposes:
-
- 1) The internal kill-buffer, updated on the following commands:
- - copy-region-as-kill,
- - kill-word, kill-line, kill-paragraph, kill-region
- To paste back from this buffer, use C-y (yank)
- 2) A separate buffer for rectangle operations. Use the commands
- described in section 6.c.
- 3) The Windows clipboard, updated on the following commands:
- - copy-region-to-clipboard
- - kill-region-to-clipboard
- - Mouse operations, described in section 6.a.
- To paste back from this clipboard, use M-x
- yank-from-clipboard, or the right mouse button.
-
- Please note that mouse operations (section 6.a) will NO LONGER
- affect NotGNU's internal kill buffer, but merely the external
- clipboard.
-
- DNOT.EXE only supports the internal kill buffers (1) and (2).
-
-
- 6.c) Rectangle operations
- --------------------------
- NotGNU provides GNU Emacs 19-like rectangle operations. Select a
- region using the mouse, or set-mark-command followed by a cursor
- movement; then type either of the following commands:
- M-x copy-rectangle ; Copy rectangle between mark and cursor
- M-x delete-rectangle ; Erase rectangle between mark and cursor
- M-x kill-rectangle ; Cut rectangle between mark and cursor
- M-x clear-rectangle ; Replace text in rectangle with blanks
- M-x open-rectangle ; Insert blanks into the rectangle (*)
-
- To yank back the rectangle buffer into the text, use
- M-x yank-rectangle ; Insert rectangle buffer into text (*)
-
- (*) Please note that TABs cause strange results in open-rectangle.
- Also, yank-rectangle will not change the contents of a rectangle
- to account for any yanking to a different tab offset. The other
- functions attempt to do the right thing with TABs.
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 6: NotGNU Operations (cont.) Page 13
- ------------------------------------------------------------------------
-
- 6.d) Autocompletion
- --------------------
- Pretty straightforward; simply press SPACE or TAB to complete a
- filename or a command while typing in the minibuffer. For
- filenames, SPACE will list all files, while TAB will list only
- directories (useful for quick access to subdirectories in cases
- where the parent directory contains many files, such as your
- windows directory).
-
- 'M-x set-gnu' alters the behavior of file completion such that TAB
- attempts full completion w/o generating a full dired-completion
- buffer, thus you lose the step-down-into-directory feature
- defaulted by notGNU. <Space> attempts to complete only to token
- (.,-) when filling in a file name, a'la GNU. It's still not
- exactly like GNU, but it's closer.
-
- Wildcards can be used w/autocompletion: Use *.txt <SPACE> to list
- all files w/extension ".txt", etc.. NotGNU can NOT open a file
- with wildcards in the name, however. 'fo*.bar' will not get you
- foo.bar.
-
-
- 6.e) Minibuffer
- ----------------
- Minibuffer editing is not available. However the following keys
- are supported:
- C-h, Backpace, Del | Delete last typed character
- C-w | Delete last typed word
- C-u | Delete the whole line
-
-
- 6.f) Buffer List
- -----------------
- Invoked by M-x list-buffers (C-x C-b).
- Available commands are 'u' (use), 's' (save), and 'k' (kill).
-
-
- 6.g) dired
- -----------
- Invoked by M-x dired (C-x d)
- Available commands are 'e' (edit), 'f' (find-file), 'v' (view)
-
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 6: NotGNU Operations (cont.) Page 14
- ------------------------------------------------------------------------
-
- 6.h) query-replace, replace-string, set-case
- ---------------------------------------------
- M-x query-replace performs interactive string replacement with
- user confirmation for each entry, while M-x replace-string
- performs an unconditional replace.
-
- The following options are available when prompted whether to
- replace an occurrence with query-replace.
-
- ! = unconditionally replace the rest
- . = replace this occurrence, and then skip the rest
- n, DEL = do not replace this occurrence
- y, SP = do replace this occurrence
- ^G, ESC = quit 'query-replace' mode.
-
- After being done with one buffer, you have the option of moving to
- the next buffer, skipping the next, or quitting.
-
-
- 6.i) Undo
- ----------
- The way undo works is a bit different from GNU emacs. In GNU, an
- undo operation is itself pushed onto the undo stack when executed.
- If you do several undos in a row, it will go back in the stack,
- but if you do another operation in between two undos, it will
- start over again from the top (and undo your undos).
-
- NotGNU has a simpler and more logical approach; any undo will
- simply pop out the last executed operation from the undo stack,
- and the stack will shrink. Undo also takes an argument; 'C-u 5 M-x
- undo' will do 5 undos. Undo's are stored on a per buffer basis and
- edits/undos in one buffer do not effect the state in any other.
-
- You can set the maximum depth of the undo stack to some other
- value than the default 100; use M-x set-undo-stack-depth.
- Increasing the depth increases memory usage, setting the size to 0
- disables undo. Saving the file clears the undo stack, you can
- also clear it by hand with M-x empty-undo-stacks (to free some
- memory).
-
-
-
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 7: Command reference Page 15
- ------------------------------------------------------------------------
-
- 7.a) Some basic Emacs commands
- -------------------------------
- If you are new to emacs, the following will undoubtedly be of
- help. A word on notation:
- C-h means Control-H. Hold down the Ctrl key, and press H.
- M-h means Meta-H. Some computers do indeed have a Meta key,
- but may label it differently. Look for "Alt", "Extended
- char" (HP workstations)... On a PC, M-h means "Alt-H".
- If your computer does not have such a key, you can use
- ESC. M-h would then be 'ESC h' (Press ESC, then press h).
-
-
- (NG) means that the function is NotGNU specific, and not
- defined in GNU emacs.
- (HW) means that the key is hardwired, and cannot be changed.
-
- --------------------------------------------------------------------
- C-b, C-f, C-p, C-n | backward-char, forward-char,
- or arrow keys | previous-line, next-line
- | moves cursor left, right, up, and down.
- |
- C-a, C-e | beginning-of-line, end-of-line
- or Home, End | moves to the beginning or end of line.
- |
- C-v, M-v | scroll-up, scroll-down
- or PgDn, PgUp | jumps one screenfull down or up
- |
- C-d | delete-char
- Backspace | backward-delete-char
- | delete one character
- |
- C-g | keyboard-quit
- | if you have started a complex command
- | (described below), but you do not want to
- | complete it, this command can be used to
- | abort it.
- |
- C-h | help
- C-h a, C-h b, | apropos, describe-bindings,
- C-h c, C-h d | describe-key-briefly, list-key-names
- |
- |
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 7: Command reference (cont.) Page 16
- ------------------------------------------------------------------------
-
- C-k | kill-line
- | cuts to end-of-line if there is anything
- | in it; if not, delete the line itself.
- | Two C-k's deletes a line with text.
- |
- C-l | recenter
- | redraws the screen and places the line
- | with the cursor in the middle. can also
- | be used to clean the screen if it
- | should 'mess up' for some reason.
- |
- M-q | quoted-insert
- | the next character you type in is
- | inserted no matter if it is a control
- | character or not. if, however, you type
- | C-q and 3 octal digits, the appropriate
- | ascii-code will be inserted. (e.g.
- | 'C-q 145' would be equivalent to 'e').
- |
- C-r, C-s | isearch-backward, isearch-forward
- | search as you type; and move the cursor
- | to the closest occurrence of the string
- | typed so far.
- |
- |
- C-u | universal-argument
- | type in a number and a command, and that
- | command will be executed the appropriate
- | number of times. (e.g. 'C-u 79 -' will
- | insert 79 hyphens)
- |
- C-x | c-x prefix
- | Special prefix char.
- |
- C-w, M-w | kill-region, copy-region-as-kill
- | cut or copy the current region; that is
- | -- the text between the mark and the
- | cursor. see set-mark-command below.
- |
- C-y | yank
- | 'paste' the text in the kill buffer.
- | used after cutting with C-k or C-w, or
- | copying with M-w.
- |
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 7: Command reference (cont.) Page 17
- ------------------------------------------------------------------------
-
- C-@ | set-mark-command
- or C-Space (HW) | sets the mark at the cursor position,
- | thus defining the start (end) of the
- | region.
- |
- M-^ | delete-indentation
- | join with line above, squish out spaces
- |
- M-b, M-f | backward-word, forward-word
- | moves the cursor one word backward or
- | forward.
- |
- M-d | kill-word
- | cut a word.
- |
- M-m (NG) | delete-line
- | delete line regardless of location of
- | dot.
- |
- M-q | fill-paragraph
- | reorder the text in this paragraph,
- | making the lines fairly adjusted based
- | on fill column.
- |
- M-w | copy-region-as-kill
- | described above
- |
- M-x | execute-extended-command
- | do any emacs command; including the more
- | complex ones that are not assigned to any
- | key or key sequence. To find the current
- | line number, for example, type
- | 'M-x what-line'.
- |
- M-% | query-replace
- | replace one string with another, and asks
- | for confirmation every time.
- |
- C-x b | switch-to-buffer
- | if editing more than one file, switch to
- | another file.
- |
- C-x i | insert-file
- | inserts a file into the current text.
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 7: Command reference (cont.) Page 18
- ------------------------------------------------------------------------
-
- C-x k | kill-buffer
- | 'quit' this file.
- |
- C-x o | other-window
- | puts the cursor in another window, if any.
- | see split-window-vertically below.
- |
- C-x s | save-some-buffers
- | save all modified buffers
- |
- C-x u | undo
- | undo the last operation and pop it off
- | the undo stack.
- |
- C-x C-c | save-buffers-kill-emacs
- | EXIT. If there are modified buffers,
- | emacs will ask if you want to save them.
- |
- C-x C-f | find-file
- | load a file into a new buffer. this is
- | one of the most frequently used commands.
- |
- C-x C-l, C-x C-u | downcase-region, upcase-region
- |
- C-x C-s | save-buffer
- | save current buffer!
- |
- C-x C-w | write-file
- | save current buffer, and prompt for
- | filename. default is 'current' name, just
- | like C-x C-s
- |
- C-x C-x | exchange-point-and-mark
- | put the cursor at the mark, and set the
- | mark where the cursor was.
-
-
-
-
-
-
-
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 7: Command reference (cont.) Page 19
- ------------------------------------------------------------------------
-
- 7.b) Specific NotGNU keys
- --------------------------
- NotGNU has some key commands that are not available in GNU emacs,
- keys that are hardwired and cannot be changed, and/or keys that
- perform functions not available as extended commands via M-x.
-
- These are:
- --------------------------------------------------------------------
- C-Space (H) | set-mark-command
- C-Up (H, N) | scroll-one-line-down
- C-Down (H, N) | scroll-one-line-up
- M-m (N) | delete-line
- M-C-Up (H, N, K) | Previous window
- M-C-Down (H, N, K) | Next window
- C-Left (N) | backward-word
- C-Right (N) | forward-word
- C-TAB (N) | Insert TAB character
- TAB (N, K) | Insert 4 spaces
- --------------------------------------------------------------------
- (H) means that the key is hardwired, and cannot be changed (note:
- <Esc> can not be used for Meta here).
- (N) means that the key is NotGNU specific.
- (K) means that the function is not available via M-x.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 7: Command reference (cont.) Page 20
- ------------------------------------------------------------------------
-
- 7.c) Specific NotGNU functions
- -------------------------------
- This is a list of some of the newer functions in NotGNU. The ones
- that are not listed, are generally the same as in GNU Emacs.
-
- To get a complete list, with bindings, press C-h a RET (apropos).
- ====================================================================
- apropos
- list all commands containing argument. for a list of ALL
- commands, do M-x apropos RET (Or C-h a RET).
-
- append-region-to-buffer
- append region to the kill buffer
-
- buffer-flush-undo
- clear the undo stack; free memory
-
- clear-rectangle
- fill rectangle region with blanks
-
- compile
- trys-to-be like GNU version, defaults are 'nmake' on
- Windows/NT, 'make' on uni*x systems.
-
- copy-rectangle
- copy text from rectangle to the rectangle kill buffer
-
- copy-region-as-kill
- copy region to kill buffer
-
- copy-region-to-buffer
- copy region and yank into specified buffer
-
- copy-region-to-clipboard
- copy region to the Windows clipboard or X11 cutbuffer 0.
-
- delete-rectangle
- delete text in rectangle (don't save in kill buffer)
- See also kill-rectangle.
-
- display-filename
- toggle filename display in modeline
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 7: Command reference (cont.) Page 21
- ------------------------------------------------------------------------
-
- display-time
- Toggle time display in modeline
-
- find-first-change, find-next-change
- find changes in the text since last save.
-
- goto-match
- paren matching: finds (), {}, [].. matches
-
- kill-rectangle
- cut text from rectangle to the rectangle kill buffer
-
- kill-region-to-clipboard
- cut region to the Windows clipboard or X11 cutbuffer 0.
-
- make-backup-files
- toggles whether to create backup files (same as
- toggle-make-backups)
-
- next-error
- On SOME supported systems, will locate the error lines in the
- make log and find the source file/line for you in another
- buffer. Supported on Windows for MSC 6 and 7, version 3.x of
- the Borland C++ compiler, the MS compiler on NT, Ultrix,
- DEC-OSF, HP-UX, Solaris 2. 1 with SunSoft compiler. Author is
- thinking on making it user-definable via a template file...
-
- open-rectangle
- inserts spaces into rectangle
-
- print-buffer, print-file, print-file-exit
- guess..
-
- replace-string
- unconditional string replace, a la GNU Emacs.
-
- reread-file
- equal to killing w/o saving the current file, then revisiting.
-
- revert-to-incremental
- At fixed intervals, ~20 secs of so, the contents of all
- buffers with filenames are saved to incremental backups. This
- cmd reloads the buffer with the content of the most recent
- save. (equal to M-x recover-file)
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 7: Command reference (cont.) Page 22
- ------------------------------------------------------------------------
-
- set-autosave-inc
- specify interval between each auto-save (in seconds)
-
- set-case
- specify whether replace-string and query-replace should do
- case insensitive search, and/or preserve case when replacing
-
- set-bg-color
- set-fg-color
- set-fg2-color
- set-fg3-color
- set background, text, touched text, and echoline prompt
- colors. (Old set-text-color, set-touched-text-color,
- set-window-color are also supported)
-
- set-directory-cols
- specify whether file listings should use single or multiple
- columns
-
- set-font
- set the current window font; should be fixed pitch
- (monospaced) else nasty results.
-
- set-gnu
- set/unset GNU-style auto-completion.
-
- set-select-highlight
- specify whether highlighted region (w/mouse operations) should
- use text or background highlight. Default is background.
-
- set-tab-stop
- requires > 1, and divisible by 2
-
- shell-command
- executes the contents of the MESHELL environment variable, or
- COMMAND.PIF, or command.com/cmd.exe (Windows 3.x/NT), with
- given arguments. See sections 4.e) and 4.f)
-
- shell-window
- executes the contents of the MESHELL environment variable, or
- MESHELL.PIF, or command.com/cmd.exe (Windows, NT). See
- sections 4.e) and 4.f)
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 7: Command reference (cont.) Page 23
- ------------------------------------------------------------------------
-
- show-region
- temporary highlight of current region
-
- toggle-check-file-timestamp
- change state of file timestamp checking; while enabled, each
- op that would modify a buffer checks see that the file is not
- newer than the buffer content. Slow on floppies. (Default: no)
-
- toggle-just-write-newline
- causes files with to be written w/o the CR (just NL); Can be
- overridden per buffer with set-write-cr.
-
- toggle-make-backups
- make backup files (Default: yes)
-
- toggle-modified-state
- change modified state of a buffer; may clear the undo stack
-
- toggle-mouse-paste-where
- determines if MB2 (right mouse button) pastes at dot (cursor),
- or at the mouse pointer. (Default: pointer)
-
- toggle-newline-behavior
- REMOVED. Use 'toggle-just-write-newline'
-
- toggle-read-only
- change read-only state of a buffer; may clear undo stack
-
- toggle-show-linenumber
- puts linenumber in modeline. Use ctrl-l if seems out of sync.
-
- toggle-show-touched-text
- toggle the drawing of edited text in a different color.
-
- toggle-window-menu
- create/destroy a window menubar (Windows/NT). Supports editor
- commands plus access to the Windows clipboard.
-
- undo
- multilevel undo. See section 6.i)
-
- undo-high-threshold
- same as set-undo-stack-depth
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 7: Command reference (cont.) Page 24
- ------------------------------------------------------------------------
-
- unix-exec
- somewhat like win-exec; spawn a process and don't wait for it.
-
- view-file
- like find file, marks buffer read-only
-
- win-exec
- execute a Windows program, don't wait for completion (Windows)
-
- yank-rectangle
- inserts text from the rectangle kill buffer into rectangle.
-
- yank-from-clipboard
- paste text from the Windows clipboard or X11 cutbuffer 0.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 8: Limitations and bugs Page 25
- ------------------------------------------------------------------------
- The following is a list of some of NotGNU's limitations in terms of
- capabilities, and some of its known bugs. If you discover strange
- behaviors that are not described here, please contact the author; her
- address is listed in the introduction.
-
-
- Size limitations
- There is no editor-defined filesize limit in NotGNU. Line
- length will be limited by the size of a signed integer. The
- other limiting factor is virtual memory, though if you have
- 1000 byte filenames, it might get messy.
-
- Please note, however, that DOS version does NOT have the
- ability to use extended or virtual memory and therefore CAN
- run out of memory with very large/many files.
-
- No TeX, Lisp or Info
- These features are currently beyond the scope of NotGNU.
-
- No binary file support
- NotGNU is designed to run under both Unix and DOS; it reads a file
- in either format and writes it in desired format. This sometimes
- means converting ^M^J to just ^J, sometimes ^J to ^M^J.
-
- No editing in minibuffer
- ... although Backspace and Ctrl-U will work the usual way. Ctrl-W
- will backup (destructively) by words.
-
- TABs in rectangles
- Not so much a bug as inelegant. Rectangles are defined by absolute
- character offsets, and TABS confuse open-rectangle since it isn't
- looking at 'columns' yet.
-
- Display not updated w/DEC's "compose" utility
- DEC's "compose" utility steals the focus while composing a
- character; NotGNU does not handle that. Press C-l to refresh;
- move the NotGNU window away from the Compose bar to avoid.
-
- describe-bindings
- 'C-h b', or describe-bindings, does not list meta or
- ESC key bindings properly.
-
-
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 8: Limitations and bugs (cont.) Page 26
- ------------------------------------------------------------------------
-
- Timestamp checking and write-file
- Timestamp checking won't save you from overwriting a file if you
- use write-file directly. Perhaps the buffer should have a timestamp
- when created that can be checked against a file.
-
- Startup file processing
- can be confused. Also, some commands that require a user action
- will stop it. Note that if you put (set-fg-color) in the startup
- file, that Window's dialog boxes will pop up on Windows 3.x/NT,
- but X11 versions take a command line argument and thus work. In
- addition, broken syntax may have the incredibly nasty effect of
- crashing the editor!
-
- Some keys are hardwired
- The hardwired keys are not perfectly friendly, but it was much
- easier to do a couple things that way.
-
- Long-line display
- is simplistic.
-
- Pasting with the mouse
- into an extended line is pretty hard to get right!
-
- Printing (Windows 3.1/NT only)
- is quite simplistic!
-
- Keyboard problems:
- Not all X11 servers return the "correct" keypress names for
- certain keys. On my PC, m-^ works fine. On my HP server, I need to
- do ESC ^ because m-^ doesn't work. Most other meta keys work on
- the HP machine though. Similar things are true with the keycodes
- for BACKSPACE and DELETE, and their modified values. On my HP
- keyboard, m-backspace returns 'U' and m-DeleteLine returns
- m-backspace and c-DeleteLine returns c-backspace!
-
-
-
-
-
-
-
-
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 9: Frequently asked questions Page 27
- ------------------------------------------------------------------------
-
- Since the last release, certain questions have appeared more or less
- regularly:
-
- Q) When running iconized, 'make' and 'compile' are S-L-O-W!
- A) Copy the file COMMAND.COM to your windows directory, or if you are
- using an alternative command interpreter, edit its PIF file. See
- section 4.e) and 4.f)
-
- Q) How do I list available commands?
- A) Use ``C-h a'' or ``M-x apropos'', then specify your argument.
- If you want to list ALL commands, just press RET.
-
- Q) Is source code available?
- A) The author is trying to keep the distribution of source code at a
- minimum to make fixing bugs/adding features easier. Contact her
- directly for more information as the source is available.
-
- Q) Highlight of selected region does not work
- A) You have upgraded from a previous version, and not specified
- a color for the new item "Echo Text Color". Do this, and save
- settings. See section 4.a).
-
- Q) DOS version doesn't use extended memory, the mouse, or extended
- keys. Can it be changed?
- A) No and Yes. DOS version now reads bios console size and
- set-window-size works . If enough people beat me up and I get a
- 32 bit compiler, other things may also change..
-
- Q) Why do the menu items look the way they do in the window menu?
- A) Capital words are commands that are hopefully obvious. The commands
- with '-' in the name are the actual notGNU command names. And no, I
- don't think there'll ever be a mode to list the English equivalents.
-
- Q) How come there are no scroll bars?
- I'll make them optional when I get them working correctly.
-
- Q) Will there be an extension language?
- A) Someday maybe. Never say never, but remember this is a small(ish)
- editor and not everyone has tons of disk or ram. Remember this answer
- in regards to features which are outside the mainstream. :)
-
-
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 9: Frequently asked questions (cont.) Page 28
- ------------------------------------------------------------------------
-
- Q) open-rectangle looks hosed; yank-rectangle sometimes looks wrong.
- What's wrong?
- A) The other rectangle ops now do a semi-reasonable job of handling
- tabs when operating on rectangles. Yank makes no attempt at all to
- figure the tabs in the rectangle and destination to do 'something'
- when pasting in (I don't think GNU emacs does either), and Open
- gets confused by them when inserting blanks to open an area. So,
- open-rectangle has a known bug.
-
- Q) NotGNU sounded interesting, until I read it doesn't have XXXX
- A) Thanks for your comment, it will count as a 'vote' for further
- development! :-)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 10: Updates, mailing lists Page 29
- ------------------------------------------------------------------------
-
- 10.a) FTP downloads
- --------------------
- This release of NotGNU is available via anonymous FTP to the
- following sites (and mirror sites):
-
- Site File Environment
- ====================================================================
- oak.oakland.edu /pub/msdos/editor/xnot14.zip Win3/NT/DOS
- ftp.cica.indiana.edu /pub/pc/win3/uploads/xnot14.zip Win3/NT/DOS
- netcom.com /pub/notgnu/dnot14.zip DOS
- netcom.com /pub/notgnu/wnot14.zip Win3
- netcom.com /pub/notgnu/ntnot14.zip NT/Intel
- netcom.com /pub/notgnu/ntaxp14.zip NT/DEC AXP
- ====================================================================
-
- Only major releases will be uploaded to oak and cica though;
- intermediate beta releases will primarily be found at netcom.com.
-
-
- 10.b) NotGNU-request
- ---------------------
- Another way to obtain NotGNU executables, as well as information
- on the current status, is to send email to:
- notgnu-request@netcom.com (NotGNU request service)
-
- In the body of your message, give a "SEND <packet>" command;
- packet is one of DNOT, WNOT, NTNOT, NTAXP, DOC, or INFO.
-
-
- Example:
- +------
- | To: notgnu-request@netcom.com (NotGNU request service)
- | From: alice@wonderland.com (Alice in Wonderland)
- |
- | SEND WNOT
- +------
-
- For more information on how to use NotGNU-request, including
- information on how to join the lists described below, give
- a 'HELP' command w/o arguments in the same manner.
-
-
-
-
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
- Section 10: Updates, mailing lists Page 30
- ------------------------------------------------------------------------
-
-
- 10.c) NotGNU-list
- ------------------
- On request from several users, a NotGNU mailing list is being
- introduced these days. The topics for discussion have not yet
- been completely settled, but will *probably* have to do mostly
- with NotGNU itself (suggestions, problems, ..) and maybe a bit
- with editors and/or programming in general. It all depends on
- you. :)
-
- To subscribe to the list, send a ``JOIN MAILING'' command to
- notgnu-request@netcom.com, in the same manner as described above.
-
- It may take a little while to build it up; moderate traffic is
- expected in the beginning.
-
-
-
- 10.d) Other lists
- ------------------
- A separate list exists for various NotGNU announcements, such as
- information on new versions, bug findings, etc; and a third
- list exists for distribution of binaries as soon as they are
- posted (thereby saving the subscribers the work of that extra
- "SEND" command.. :) The syntax for joining these lists are:
-
- JOIN ANNOUNCEMENT
- JOIN DISTRIBUTION
-
- Again, a summary of the commands available can be obtained by
- sending a ``HELP'' message.
-
-
-
-
-
- ________________________________________________________________________
- This document was created by Tor Slettnes on August 9, 1993; last
- update was for NotGNU version 1.4 on October 4, 1993. Additions to
- match typeset version incorporated on October 16 by Bernie Hayden.
- Any comments, suggestions, bug reports are certainly most welcome.
- Send e-mail to:
-
- <tor@netcom.com> -tor
- ________________________________________________________________________
- NotGNU 1.4 Copyright (C) 1993 Julie Melbin
-
-